package com.warm.system.service;


import com.warm.core.page.TableDataInfo;
import com.warm.orm.domain.sys.dto.SysHotPlugDto;
import com.warm.orm.domain.sys.vo.SysHotPlugVo;
import org.noear.solon.core.handle.UploadedFile;

import java.io.IOException;
import java.util.List;

/**
 * 扩展插件Service接口
 *
 * @author xian.zi.ming@qq.com
 */
public interface ISysHotPlugService   {
    /**
     * 查询扩展插件
     *
     * @param qualifiedName 扩展插件主键
     * @return 扩展插件
     */
    public SysHotPlugVo selectById(String qualifiedName);

    /**
     * 分页查询扩展插件列表
     *
     * @param dto 扩展插件
     * @return 分页对象
     */
    TableDataInfo<SysHotPlugVo> selectPage(SysHotPlugDto dto);

    /**
     * 查询扩展插件列表
     *
     * @param dto 扩展插件
     * @return 扩展插件集合
     */
    public List<SysHotPlugVo> selectList(SysHotPlugDto dto);

    /**
     * 新增扩展插件
     *
     * @param dto 扩展插件
     * @return 结果
     */
    public int insertByDto(SysHotPlugDto dto);

    /**
     * 修改扩展插件
     *
     * @param dto 扩展插件
     * @return 结果
     */
    public int updateByDto(SysHotPlugDto dto);

    /**
     * 批量删除扩展插件
     *
     * @param qualifiedNames 需要删除的扩展插件主键集合
     * @return 结果
     */
    public int deleteByIds(String[] qualifiedNames);

    boolean checkDictTypeUnique(SysHotPlugDto dto);

    String uploadPlug(UploadedFile file) throws IOException ;
}
